XMSDSK.EXE & EMSDSK.EXE Franck UBERTO - 94/05/18 38000 Grenoble - FRANCE email : uberto@esrf.fr These utilities are 2 ramdisks. For some people, they surely will lack of some "bells and whistles", but I made them efficient and simple to use. There are 2 programs because I wanted to optimize size and speed, so one is for XMS and the other one is for EMS. To get help for running them, just type : XMSDSK (or EMSDSK) /?. You can use them on 286 and upper (use EMSDSK86 for 8086 cpu). Once installed they will occupy about 400 bytes. I have performed some tests and I found them not so bad compared with concurrents (even well known). You can resize the disk (down to zero, or up to 32 Mb if available) at any time and so regain memory for another usage. This is possible on DOS command line but *NOT* under WINDOWS because of virtualization. The transient part of EXE will calculate all parameters for new size disk (I use the same ones as MS-DOS for hard disk, so they should be convenient for all cases). Take care, if you shell out of a DOS program and modify the size of the disk : in the case you have set TEMP (or TMP) variable on the ramdisk or you have told this program to use the ramdisk, then some (hidden) files may have been created and some (not) pleasant things can happen. These two EXE are in fact some mixing of SYS and COM files. Resident part is written in assembler (for optimization) and transient part (initialization of driver and size redefinition) in C (for simplicity). For this I have to modify the startup code of my compiler because the driver part (resident and installation code) must be placed before it. So at the end you have : - resident part of driver in assembler - initialization of driver in C - C startup code in assembler - size redefinition part in C Well all this to say that some day I will release source code, but for the moment you can use and distribute these files : it's freeware. So ENJOY ... BTW : I thank all of you that have send me some message telling they appreciate (more or less :-) this program. * Examples device[high]='path'\XMSDSK.EXE [size] (or EMSDSK.EXE) Install ramdisk in config.sys. If size is not specified then 512 Kb is requested. XMSDSK (or EMSDSK) On DOS command line, tells you the size and drive used by the ramdisk. XMSDSK size (or EMSDSK) Modify the size of the ramdisk. echo y | XMSDSK size (or EMSDSK) In autoexec.bat, modify without prompting the size of the ramdisk. * History v1.0 (May 92) Initial version. v1.1 (Jun 92) Adds some optimization in resident part. v1.2 (Oct 93) Adds some tests in size redefinition part. v1.3 (Apr 94) Corrects a bug when requested size was around 4000 Kb and another one which limited size to 16 Mb. :-) Adds more accurate error messages instead of "error during installation".